package com.tmt.im.wallet.controler.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.experimental.SuperBuilder;

import java.io.Serial;
import java.io.Serializable;

/**
 * @Description TODO
 * @Author wuyi
 * @Date 2024/9/5 8:59
 * @Version 1.0
 **/

@Getter
@Setter
@SuperBuilder
@NoArgsConstructor
@AllArgsConstructor
@Tag(name = "SendRedPackageItem", description = "发出的红包列表项对象")
public class SendRedPackageItem implements Serializable {
    @Serial
    private static final long serialVersionUID = 8824945786867797186L;

    @Schema(description = "红包ID")
    private Long id;

    @Schema(description = "红包的皮肤ID")
    private Long skinId;

    @Schema(description = "红包皮肤的URL")
    private String skinUrl;

    @Schema(description = "红包的标题")
    private String title;

    @Schema(description = "红包设置的可领取人数")
    private Integer splitCount;

    @Schema(description = "红包的金额，单位：分")
    private Long amount;

    @Schema(description = "已领取人数")
    private long receiverCount;

    @Schema(description = "已领取总额，单位：分")
    private long receivedAmount;

    @Schema(description = "已退款总额，单位：分")
    private long refundedAmount;

    @Schema(description = "红包是否已经领取完毕")
    private boolean receivedAlready;

    @Schema(description = "过期时间")
    private Long expireTime;

    @Schema(description = "创建时间")
    private Long createTime;

}
